package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 咨询师个人简历业务对象 p_resume
 *
 * @author ruoyi
 * @date 2022-07-21
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("咨询师个人简历业务对象")
public class PResumeBo extends BaseEntity {

    /**
     *
     */
    @ApiModelProperty(value = "", required = true)
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 咨询师id
     */
    @ApiModelProperty(value = "咨询师id", required = true)
    @NotNull(message = "咨询师id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long userId;

    /**
     * 个人简介
     */
    @ApiModelProperty(value = "个人简介", required = true)
    @NotBlank(message = "个人简介不能为空", groups = { AddGroup.class, EditGroup.class })
    private String descInfo;

    /**
     * 擅长领域
     */
    @ApiModelProperty(value = "擅长领域", required = true)
    @NotBlank(message = "擅长领域不能为空", groups = { AddGroup.class, EditGroup.class })
    private String goodDesc;

    /**
     * 工作年限
     */
    @ApiModelProperty(value = "工作年限", required = true)
    @NotBlank(message = "工作年限不能为空", groups = { AddGroup.class, EditGroup.class })
    private String workTime;

    /**
     * 擅长疗法
     */
    @ApiModelProperty(value = "擅长疗法", required = true)
    @NotBlank(message = "擅长疗法不能为空", groups = { AddGroup.class, EditGroup.class })
    private String goodTherapy;

    /**
     * 培训经历
     */
    @ApiModelProperty(value = "培训经历", required = true)
    @NotBlank(message = "培训经历不能为空", groups = { AddGroup.class, EditGroup.class })
    private String trainingExperience;

    /**
     * 心理师级别
     */
    @ApiModelProperty(value = "心理师级别", required = true)
    @NotBlank(message = "心理师级别不能为空", groups = { AddGroup.class, EditGroup.class })
    private String levelInfo;

    /**
     * 用户满意度
     */
    @ApiModelProperty(value = "用户满意度", required = true)
    @NotNull(message = "用户满意度不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal agreement;

    /**
     * 帮助人数
     */
    @ApiModelProperty(value = "帮助人数", required = true)
    @NotNull(message = "帮助人数不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long helpPeople;

    /**
     * 接单状态 0 否 1 是
     */
    @ApiModelProperty(value = "接单状态 0 否 1 是", required = true)
    @NotBlank(message = "接单状态 0 否 1 是不能为空", groups = { AddGroup.class, EditGroup.class })
    private String workType;

    /**
     * 平台保障
     */
    @ApiModelProperty(value = "平台保障", required = true)
    @NotBlank(message = "平台保障不能为空", groups = { AddGroup.class, EditGroup.class })
    private String platformGuarantee;

    /**
     * 是否公益 0 否 1 是
     */
    @ApiModelProperty(value = "是否公益 0 否 1 是", required = true)
    @NotBlank(message = "是否公益 0 否 1 是不能为空", groups = { AddGroup.class, EditGroup.class })
    private String status;

    /**
     * 公益时长
     */
    @ApiModelProperty(value = "公益时长", required = true)
    @NotNull(message = "公益时长不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long freeTime;

    /**
     * 咨询人数
     */
    @ApiModelProperty(value = "咨询人数")
    private Integer askNum;

    /**
     * 入驻咨询师 0 待审核 1 通过 2 未通过
     */
    @ApiModelProperty(value = "入驻咨询师审核")
    private String isFlag;
}
